02. Project Instructions
The Goal of this Project
In this project, your goal is to write a software pipeline to identify vehicles in a video from a front-facing camera on a car. The test images and project video are available in the project repository. There is an writeup template in the repository provided as a starting point for your writeup of the project.
The Writeup
The writeup you create for this project will be the primary output or product you are expected to submit (along with your code of course).
A great writeup should include the rubric points as well as your description of how you addressed each point. You should include a detailed description of the code used in each step (with line-number references and code snippets where necessary), and links to other supporting documents or external references. You should include images in your writeup to demonstrate how your code works with examples. Checkout the writeup template in the project repo as a starting point.
All that said, please be concise! We're not looking for you to write a book here, just a brief description of how you passed each rubric point, and references to the relevant code :).
You can submit your writeup in markdown or use another method and submit a pdf instead.
Your Code
Your code should be commented well and stand on its own as readable material. You should explain, both in the code comments as well as in your writeup, how your code works and why you wrote it that way. In short, you want to make it easy for a reviewer to understand your code and how you used it in your project. You are more than welcome to use code from the lesson or elsewhere but if you copy/paste something, just make sure to attribute it to the original source and explain how it works and why you are using it.
Vehicle Detection and Tracking project workspace
This workspace is designed to be a simple, easy to use environment in which you can code and run the Vehicle Detection and Tracking project. The project instructions can be found in the final concept of this project. The project repo and is already included so steps for downloading the repo can be bypassed.
Note that while this workspace is set up as a Jupyter workspace to help you visualize your pipeline (click New->Notebook: Python 3), you can also choose to use Python files by clicking New->Other: Text File and saving it as a .py file. To access a terminal, use New->Other: Terminal.
For tips on workspace use, please review the Workspaces lesson.
Accessing and using the workspace:
- Go to the workspace node and the project repo will open
- Complete the project using the instructions in the final concept of this project, keeping in mind that the repo is already in the workspace.
Commit to GitHub
Students are highly encouraged to commit their project to a GitHub repo. To do this, you must change the upstream of the current repository and add your credentials. We have supplied a bash script to help you do this. Please open up a terminal, navigate to the project repository, and enter: ./set_git.sh, then follow the prompts. This will set the upstream remote to your own repository and add your email and username to the git configuration. At this time we are not configuring passwords, so you will need to enter your username and password for each push. Since credentials are not persistent, it will be necessary to run this script each time you open, refresh, or reset the workspace.
What it Takes to Pass
Check out the project rubric for details on what the requirements are for a passing submission. Your writeup should include each rubric point and your description of how you addressed that point in your submission. The project repo provides an example template for your writeup.
There is no starter code provided, but you are welcome to use code from the lesson and quizzes as you like. You may complete the project in a Jupyter notebook, but it's not required. Feel free to build it as a standalone project.
To help the reviewer evaluate your project, please save example images from each stage of your pipeline to the output_images folder and provide a description of what each image shows in your writeup for the project. Please also save your output video and include it with your submission.
Evaluation
Once you have completed your project, double check the Project Rubric to make sure you have addressed all the rubric points. Your project will be evaluated by a Udacity reviewer according to that same rubric.
Your project must "meet specifications" in each category in order for your submission to pass. If you are happy with your submission, then you are ready to submit! If you see room for improvement in any category in which you do not meet specifications, keep working!
Submission
Project submission if you run the project in your local machine:
Include a zipped file with your:
- writeup
- code (or a Jupyter notebook)
- example output images
- output video
Alternatively, you may submit a link to your GitHub repo for the project.
In either case, remember to include example images for each stage of your pipeline and your final output video in your submission.
Project submission when using workspaces:
Click on the ** Submit Project ** button and follow the instructions!
Things to keep in mind:
- If you leave your workspace unattended, it will time out and need to be refreshed. Your most recent work will be restored, but the list of open files or any running shell sessions will not be restored.
Using GitHub and Creating Effective READMEs
If you are unfamiliar with GitHub , Udacity has a brief GitHub tutorial to get you started. Udacity also provides a more detailed free course on git and GitHub.
To learn about REAMDE files and Markdown, Udacity provides a free course on READMEs, as well.
GitHub also provides a tutorial about creating Markdown files.
Project Support
If you are stuck or having difficulties with the project, don't lose hope! Remember to talk to your mentor, ask (and answer!) questions on Knowledge tagged with the project name, and reach out to your fellow students in the Vehicle Detection and Tracking channel in your Student Hub. We also have a previously recorded project Q&A that you can watch here!